Een tabel creëren
Home

Een tabel creëren

Een tabel creëren

Nadat je een database hebt gecreëerd wil je er natuurlijk tabellen in aanmaken.
Een tabel maken doe je met het CREATE TABLE commando, dat een DDL commando is.

Stappenplan

  1. Het Entity Relationship diagram

    We gebruiken het volgende ER diagram als vertrekpunt:

    ERD Boeken
    ERD Boeken
  2. Het logisch model
    Column Name Display Text Searchable Default Value Unique Type Length Variable International Required Reference Table Reference Column Display Column List HTML element HTML type attribute Reserved HTML pattern attribute HTML title attribute HTML placeholder attribute
    Voornaam Voornaam SELECTX NO NO CHAR 50 YES YES NO NA NA NA YES INPUT TEXT NA NA NA
    Familienaam Familienaam SELECTX NO NO CHAR 80 YES YES YES NA NA NA YES INPUT TEXT NA NA NA
    Titel Titel SELECTX NO NO CHAR 255 YES YES YES NA NA NA YES INPUT TEXT NA NA NA
    Stad Stad NA NO NO CHAR 50 YES YES NO NA NA NA NO SELECT NA NA NA NA
    Verschijningsjaar Verschijningsjaar SELECTX NO NO CHAR 4 NO NO NO NA NA NA NO SELECT NA NA NA NA
    Uitgeverij Uitgeverij SELECTX NO NO CHAR 80 YES YES NO NA NA NA NO INPUT HIDDEN NA NA NA
    Herdruk Herdruk NA NO NO CHAR 4 NO NO NO NA NA NA NO INPUT HIDDEN NA NA NA
    Commentaar Commentaar NA NO NO TEXT NA NA NA NO NA NA NA NO INPUT HIDDEN NA NA NA
  3. Maak een script voor het maken van de tabel Boeken

    SQL is qua keywords hoofdletter ongevoelig. Ik heb twee soorten stijlen om SQL te schrijven. Als ik geen IDE heb, zoals in MySQL, schrijf ik alle sleutelwoorden in hoofdletter en alle namen in pascalnotatie. Heb ik wel een IDE zoals de Microsoft SQL management Studio, die de sleutelwoorden in donker blauw weergeeft, schrijf ik ook de sleutelwoorden in kleine letters omdat dit rapper typt en je het onderscheid tussen sleutelwoorden en namen gemakkelijk van de kleur kan afleiden.

    -- JI
    -- 24 februari 2015
    --
    -- Begin altijd met op te geven in welke database
    -- je wilt werken!!!!!!
    use JefInghelbrecht
    go
    
    -- tekst wordt in sql tussen enkele aanhalingstekens geplaatst
    if exists(select * from sys.tables where name='Boeken')
    begin
       drop table Boeken
    end
    go
    
    
    -- de naam van de tabel in Pascalnotatie
    create table Boeken(
       Voornaam nvarchar(50),
       Familienaam nvarchar(80),
       Titel nvarchar(255),
       Stad nvarchar(50),
       -- alleen het jaartal, geen datetime
       -- omdat de kleinste datum daarin 1753 is
       -- varchar omdat we ook jaartallen kleiner dan 1000 hebben
       Verschijningsjaar varchar(4),
       Uitgeverij nvarchar(80),
       Herdruk varchar(4),
       Commentaar nvarchar(2000)
    )
    go

    Het is te optimistisch te veronderstellen dat iedereen alles begrijpt wat er in het CREATE TABLE statement staat. Jullie vragen zich misschien af wat een Id is of wat PRIMARY KEY is. Maar we laten ons voorlopig niet afleiden door zaken die met de theorie van databasemodelling te maken hebben. Het is nog niet de bedoeling alle details van elk SQL statement te begrijpen, wel de grote lijnen ervan.

    Je kan het resultaat zien in de Object Explorer. Refresh eerst je database. Klik daarna Tables open en tenslotte Columns.

    Tabellen bekijken in de Object Explorer
    Tabellen bekijken in de Object Explorer
  4. Save de script

    We maken een afspraak voor de manier van namen geven. Begin de bestandsnaam met de naam van de tabel gevolgd door wat de script doet. Bijvoorbeeld BoekenCreate.sql. Je begint de naam met de naam van de tabel omdat op die manier alle scripts voor één tabel onder elkaar getoond worden in Windows Explorer.

  5. Opdracht
    Creëer de tabel Entrant op basis van het volgende ER diagram. Attributen zet je om in kolomnamen en entiteiten in tabelnamen.

    ERD Entrant
    ERD Entrant

    Schrijf een script en sla het op in een bestand met de naam EntrantCreate.sql.

    1. Name en Email moeten 80 karakters lang zijn en nationale karakters kunnen bevatten.
    2. Session kolommen moeten boolean waarden kunnen bevatten. Je hoeft ze niet allemaal toe te voegen! Eén volstaat.
    3. De Id kolom is een geheel getal.
    4. Voorzie de script van commentaar.
    5. Let op de schrijfwijze van de identifiers!

    JI
    2020-01-18 07:55:44